$(function(){
	/**
	 * �ҵ����еĴ�����Ϣ��ѭ������
	 */
	$(".labelError").each(function(){
		showError($(this));//����ÿ��Ԫ�أ�ʹ��ÿ��Ԫ�ص��� showError ����
	});
	/**
	 * ����ƶ���ȥ֮���л�ע�ᰴť��ͼƬ
	 */
	$("#submit").hover(
			function(){//����ƶ���ȥ֮��
				$("#submit").attr("src","/goods/images/regist2.jpg");
			},
			function(){//����뿪֮��
				$("#submit").attr("src","/goods/images/regist1.jpg");
			}
	);
	/**
	 * �����õ��������ش�����Ϣ
	 */
	$(".input").focus(function (){
		var labelId=$(this).attr("id")+"Error";//ͨ��������ҵ���Ӧ������label ��  ID 
		$("#"+labelId).text(""); //�� label ���������
		showError($("#"+labelId));
	});
	/**
	 * �����ʧȥ�������У��
	 */
	$(".input").blur(function(){
		var id=$(this).attr("id");//��ȡ��ǰ������ ID 
		var funName="validate"+id.substring(0,1).toUpperCase()+id.substring(1)+"()";//ȡ�ö�Ӧ��У�麯����
		eval(funName);//eval ���ַ��� JavaScript ��ִ��
	});
	
	/**
	 * 表单提交时进行校验
	 */
	$("#registForm").submit(function(){
		var bool=true;
		
		if(!validateLoginname()){
			bool=false;
		}if(!validateLoginpass()){
			bool=false;
		}if(!validateReloginpass()){
			bool=false;
		}if(!validateEmail()){
			bool=false;
		}/*if(!validateVerifyCode()){
			bool=false;
		}*/
		return bool;
	});
});

/**
 * 登录名校验
 */
function validateLoginname(){
	var id="loginname";
	
	var value=$("#"+id).val();//获取输入框内容
	
	/**
	 * 非空校验
	 */
	if(!value){
		/**
		 * 获取对应的 label
		 * 添加错误信息
		 * 显示 label
		 */
		$("#"+id+"Error").text("用户名不能为空");
		showError($("#"+id+"Error"));
		return false;
	}
	/**
	 * 长度校验
	 */
	if(value.length<3||value.length>20){
		/**
		 * 获取对应的 label
		 * 添加错误信息
		 * 显示 label
		 */
		$("#"+id+"Error").text("用户名长度必须在  3 - 20 之间");
		showError($("#"+id+"Error"));
		return false;
	}
	/**
	 * 是否注册校验
	 */
	
	$.ajax({
		url:"/goods/UserServlet",
		data:{method:"ajaxValidateLoginname",loginname:value},
		type:"post",
		dataType:"json",
		async:false,//是否异步请求，如果是异步，那么不会等服务器返回结果就执行下面的return true 了，不可以
		cacha:false,//是否使用  cache
		success:function(result){
			if(!result){//校验失败
				$("#"+id+"Error").text("用户名已被注册");
				showError($("#"+id+"Error"));
				return false;
			}else{
				
			}
		}
	});
	return true;
}

/**
 * 登录密码校验 
 */
function validateLoginpass(){
	var id="loginpass";
	
	var value=$("#"+id).val();//获取输入框内容
	
	/**
	 * 非空校验
	 */
	if(!value){
		/**
		 * 获取对应的 label
		 * 添加错误信息
		 * 显示 label
		 */
		$("#"+id+"Error").text("密码不能为空");
		showError($("#"+id+"Error"));
		return false;
	}
	/**
	 * 长度校验
	 */
	if(value.length<3||value.length>20){
		/**
		 * 获取对应的 label
		 * 添加错误信息
		 * 显示 label
		 */
		$("#"+id+"Error").text("密码长度必须在  3 - 20 之间");
		showError($("#"+id+"Error"));
		return false;
	}
	return true;
}


/**
 * 确认密码校验 
 */
function validateReloginpass(){
	var id="reloginpass";
	
	var value=$("#"+id).val();//获取输入框内容
	
	/**
	 * 非空校验
	 */
	if(!value){
		/**
		 * 获取对应的 label
		 * 添加错误信息
		 * 显示 label
		 */
		$("#"+id+"Error").text("确认密码不能为空");
		showError($("#"+id+"Error"));
		return false;
	}
	/**
	 * 两次输入是否一致校验
	 */
	if(value!=$("#loginpass").val()){
		/**
		 * 获取对应的 label
		 * 添加错误信息
		 * 显示 label
		 */
		$("#"+id+"Error").text("两次输入的密码不一致");
		showError($("#"+id+"Error"));
		return false;
	}
	return true;
}

/**
 * Email 校验 
 */
function validateEmail(){
	var id="email";
	
	var value=$("#"+id).val();//获取输入框内容
	
	/**
	 * 非空校验
	 */
	if(!value){
		/**
		 * 获取对应的 label
		 * 添加错误信息
		 * 显示 label
		 */
		$("#"+id+"Error").text("email 不能为空");
		showError($("#"+id+"Error"));
		return false;
	}
	/**
	 * Email 格式校验
	 */
	if(!/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(value)){
		/**
		 * 获取对应的 label
		 * 添加错误信息
		 * 显示 label
		 */
		$("#"+id+"Error").text("email 格式不正确");
		showError($("#"+id+"Error"));
		return false;
	}
	/**
	 * email 是否注册校验
	 */
	$.ajax({
		url:"/goods/UserServlet",
		data:{method:"ajaxValidateEmail",email:value},
		type:"post",
		dataType:"json",
		async:false,//是否异步请求，如果是异步，那么不会等服务器返回结果就执行下面的return true 了，不可以
		cacha:false,//是否使用  cache
		success:function(result){
			if(!result){//校验失败
				$("#"+id+"Error").text("该 Email 已被注册");
				showError($("#"+id+"Error"));
				return false;
			}else{
				
			}
		}
	});
	
	return true;
}


/**
 * 验证码校验 
 */
function validateVerifyCode(){
	var id="verifyCode";
	
	var value=$("#"+id).val();//获取输入框内容
	
	/**
	 * 非空校验
	 */
	if(!value){
		/**
		 * 获取对应的 label
		 * 添加错误信息
		 * 显示 label
		 */
		$("#"+id+"Error").text("验证码不能为空");
		showError($("#"+id+"Error"));
		return false;
	}
	/**
	 * 长度 格式校验
	 */
	if(value.length!=4){
		/**
		 * 获取对应的 label
		 * 添加错误信息
		 * 显示 label
		 */
		$("#"+id+"Error").text("错误的验证码");
		showError($("#"+id+"Error"));
		return false;
	}
	
	/**
	 * 验证码是否正确
	 */
	$.ajax({
		url:"/goods/UserServlet",
		data:{method:"ajaxValidateVerifyCode",verifyCode:value},
		type:"post",
		dataType:"json",
		async:false,//是否异步请求，如果是异步，那么不会等服务器返回结果就执行下面的return true 了，不可以
		cacha:false,//是否使用  cache
		success:function(result){
			if(!result){//校验失败
				$("#"+id+"Error").text("验证码错误");
				showError($("#"+id+"Error"));
				return false;
			}else{
				
			}
		}
	});
	return true;
}




/**
 * �жϵ�ǰԪ���Ƿ�������ݣ������� ��ʾ �������� ����ʾ
 * @param ele
 */
function showError(ele){
	var text=ele.text();
    if(!text){//û������,����Ԫ��
    	ele.css("display","none");
    }else{//�����ݣ���ʾԪ��
    	ele.css("display","");
    }
}